Modern datacenters take various forms. Some datacenters are permanent installations consisting of large floor plans having row after row of racks full of blade servers, some of which permanent installations are over a football field in length. Other datacenters are “truckable” datacenters that are built from equipment shipped in containers. In either case, a typical datacenter involves thousands of servers. For example, at a density of up to 128 blade servers per fully loaded rack, an average sized corporate conference room could hold about 3000 servers.
The job of a datacenter administrator is to deliver the “right” capacity at the “right” time—whenever and however it is needed. Managing or monitoring virtual machines (“VMs”) or workload in the datacenter is a tedious and time consuming task. As such, it requires a lot of time, resources and discipline. In particular, the ease of deploying VMs can result in VM sprawl and inefficient use of virtual capacity. Thus, in a dynamic environment, delivering the “right” capacity at the “right” time can be very difficult. Hence, without the “right” tools, a datacenter environment may not be fully optimized.
Virtualization, while optimizing physical resource usage, makes the process of estimating optimum capacity (for example, CPU, Memory, Disk and bandwidth) requirements of any workload non-trivial. Traditional capacity planning tools have relied on a 1-1 mapping between compute/storage capacity and compute workload, but virtualization enables multiple compute workloads to be mapped to the same physical compute resource. In addition, other technologies such as “High Availability” (“HA”) technology, “Distributed Resource Scheduler” (“DRS”) technology, and “Fault Tolerance (“FT”) technology provided by VMware, Inc. of Palo Alto, Calif. also impact capacity requirements of a particular workload and make capacity planning challenging and unreliable.
To mitigate risk, as well as plan for future growth, managers typically provision capacity higher than highest peak of actual capacity needs. The difference between provisioned capacity and a demand peak is deemed acceptable headroom and a demand valley is acknowledged as waste. Thus, in information technology (“IT”) management there is a physical capacity management dilemma; namely, efficiency and predictability are conflicting objectives. Specifically, under-provisioning relates to high efficiency, but high risk, whereas, over-provisioning leads to high inefficiency and unnecessary waste.
Capacity management methods in the prior art typically use a “Rule of Thumb” based on “guesstimates” or tacit knowledge. A problem with this approach is that such methods are subjective, are prone to experiential bias, and, to be safe, are overly conservative. In addition, some homegrown methods use a Microsoft® Office Excel® spreadsheet or an SQL/Perl script. A problem with this approach is that the homegrown methods are time-consuming to build, maintain, prepare and analyze, and they only provide a static snapshot in time.